from base.base_page import BasePage
from selenium.webdriver.common.by import By
#对象层
class Regpage(BasePage):
    #调用父类中的方法
    def __init__(self):
        super().__init__()

    #邮箱名字
    def get_username(self):
        get_username=self.get_element(By.XPATH,'//*[@id="verify_code2"]')
        return get_username


    #验证码
    def get_code(self):
        get_code=self.get_element(By.XPATH,'//*[@id="verify_code2"]')
        return get_code



    #设置密码
    def get_pw(self):
        get_pw=self.get_element(By.XPATH,'//*[@id="password"]')
        return get_pw


    #确定密码
    def get_re_pw(self):
        get_re_pw=self.get_element(By.XPATH,'//*[@id="password2"]')
        return get_re_pw


    #推荐人号
    def get_phone(self):
        get_phone=self.get_element(By.XPATH,'//*[@id="reg_form2"]/div/div/div/div[5]/div/input')
        return get_phone


    #注册按钮
    def click_btn(self):
        click_btn=self.get_element(By.XPATH,'//*[@id="reg_form2"]/div/div/div/div[6]/div/a')
        return click_btn





#操作层
class RegHandler():

    def __init__(self):
        self.reg_handler=Regpage()
    #用户名
    def input_username(self,username):
        self.reg_handler.get_username().send_keys(username)

    #验证码
    def input_code(self,code):
        self.reg_handler.get_code().sned_keys(code)

    #密码
    def input_pw(self,pw):
        self.reg_handler.get_pw().send_keys(pw)

    #再次确认密码
    def input_re_pw(self,re_pw):
        self.reg_handler.get_re_pw().send_keys(re_pw)

    #推荐人手机号
    def input_phone(self,phone):
        self.reg_handler.get_phone().send_keys(phone)

    #点击注册
    def click_btn(self):
        self.reg_handler.click_btn().click()








#业务层
class RegAct():

    def __init__(self):
        self.reg_ack=RegHandler()

    def Reg_Act(self,username,code,pw,re_pw,phone):

        #输入用户名
        self.reg_ack.input_username(username)
        #输入验证码
        self.reg_ack.input_code(code)
        #输入密码
        self.reg_ack.input_pw(pw)

        #再次确认密码
        self.reg_ack.input_re_pw(re_pw)

        #输入推荐人手机号
        self.reg_ack.input_phone(phone)

        #点击注册
        self.reg_ack.click_btn()





